約 3,816,075 件
https://w.atwiki.jp/android/pages/12.html
Androidって何? Androidは、オペレーティングシステム、ミドルウェアと鍵となるアプリケーションを含むモバイル端末のためのソフトウェアスタックです。 Android SDKのこの早めのリリースは、Javaプログラミング言語を使用しているAndroidプラットホームでアプリケーションを開発し始めるのに必要なツールとAPIを提供します。 特徴 コンポーネントの再利用と置き換えを可能にするアプリケーションフレームワーク モバイル端末に最適化したダルヴィーク(Dalvik)ヴァーチャルマシン オープンソース WebKit エンジンに基づく統合化されたブラウザー カスタム2Dグラフィックライブラリによる最適化されたグラフィックス 3DグラフィックはOpenGL ES 1.0の仕様準拠(ハードウェアアクセラレーションは任意) 構造化されたデータ領域のためのSQLite搭載 一般的なオーディオ、ビデオと静止画フォーマットをサポート(MPEG4、H.264、MP3、AAC、AMR、JPG、PNG、GIF) GSM通話(ハードウェア依存) Bluetooth、EDGE、3G、WiFiに対応(ハードウェア依存) カメラ、GPS、コンパス、加速度計(ハードウェア依存) リッチな開発環境、端末エミュレーター、デバッグ、メモリー、パフォーマンスのプロファイリングのツール、およびEclipse IDE用のプラグイン Androidのアーキテクチャ 以下は、Androidオペレーティングシステムの主要コンポーネント図です。各々のセクションの詳細は下記に続きます。 アプリケーション Androidは電子メールクライアント、SMSプログラム、カレンダー、地図、ブラウザー、コンタクト(アドレス帳)、その他を含む一組のコアアプリケーションを搭載します。すべてのアプリケーションは、Javaプログラミング言語を使用して記述されます。 アプリケーションフレームワーク 開発者はコアアプリケーションに用いられるものと同じフレームワークAPIへ完全にアクセスできます。 アプリケーションのアーキテクチャは、コンポーネントの再利用を単純化するように設計されています。 どのようなアプリケーションでもその能力を公開することができます。そして、他のどのアプリケーションからもそれらの能力(フレームワークによって実施されるセキュリティ制約に制限される)を利用するかもしれません。このようなメカニズムにより、ユーザーによるコンポーネントの入れ替えを可能にします。 すべてのアプリケーションは、以下のサービスとシステムによって成り立っています。 リスト、グリッド、テキストボックス、ボタンと組み込み可能ななウェブブラウザを含むアプリケーションを構築するのに用いることができる豊かで拡張可能なViews?のセット アプリケーションが他のアプリケーション(例えばアドレス帳)のデータにアクセスするか、彼ら自身のデータを共有することを可能にするContent Providers? Resource Manager?(ローカライズされた文字列、グラフィックスとレイアウトファイルのような非コード資源を提供する) すべてのアプリケーションがステータスバーでカスタムメイドのアラートを表示することを可能にするNotification Manager? アプリケーションのライフサイクルを管理して、共通のナビゲーション履歴を提供するActivity Manager? アプリケーションの詳細とウォークスルーについてはAndroidアプリケーションについて?を参照してください。 ライブラリ Androidは、Androidシステムの多様ななコンポーネントにより用いられるC/C++ライブラリのセットを含みます。 これらの能力は、Androidアプリケーションフレームワークを通して開発者に公開されます。 主なライブラリは以下の通りです。 システムCライブラリ 標準的なCシステムライブラリ(libc)。(組み込み向けLinuxベースのデバイスのために調整した)BSDから派生した実装です。 メディアライブラリ PacketVideo社のOpenCOREをベースにしています。ライブラリは、多くの一般的なオーディオとビデオ形式(MPEG4、H.264、MP3、AAC、AMR、JPGとPNGのような静止画を含む)の再生とレコーディングをサポートします。 Surface Manager 表示サブシステムへのアクセスを管理して、複数のアプリケーションからシームレスに2Dと3Dグラフィックレイヤーを合成します LibWebCore Androidブラウザーと組み込み可能なウェブ表示を可能にする最新のウェブブラウザエンジン SGL 下位層にある2Dグラフィックエンジン 3Dライブラリ OpenGL ES 1.0のAPIに準拠しています。ライブラリはハードウェア3Dアクセラレーション(ハードウェア依存)、あるいは標準装備の高度に最適化された3Dソフトウェアラスタライザーを使用します。 FreeType ビットマップとベクターフォントのレンダリング SQLite すべてのアプリケーションで利用可能な強力で軽量なリレーショナルデータベースエンジン Androidランタイム Androidは、Javaプログラミング言語のコアライブラリの機能の大部分を提供するコアライブラリを含んでいます。 あらゆるAndroidアプリケーションはDalvik VMのインスタンスをアプリケーション毎に生成することによって、独立したプロセスで動作します。 Dalvik VMはデバイスが効率的に複数のヴァーチャルマシンを走らせることができるように作られています。 Dalvik VMは、省メモリのために最適化されたDalvikで実行可能なフォーマット(.dex)を使用してファイルを実行します。 VMはレジスターに基づいた、Java言語コンパイラによってコンパイルされたクラスを付属の"dx"ツールを使用して.dexフォーマットに変換したものを実行します。 Dalvik VMは、Linuxカーネルの根底にある機能(例えばスレッディングと低レベルのメモリ管理)で成り立っています。 Linuxカーネル Androidは、Linux 2.6のコアシステムサービス(セキュリティ、メモリ管理、プロセス管理、ネットワークスタックとドライバーモデル)で成り立っています。また、カーネルはハードウェアと残りのソフトウェアスタックの間の抽象レイヤーの働きもしています。 次 → Androidことはじめ 戻る 原文
https://w.atwiki.jp/shanghai_android/pages/13.html
Android、OPhone関連資料 ■2011年7月28日 第18回 日本Androidの会 東北支部発信会向け講演資料 中国のAndroid事情 ■OPhoneの概要と意義 第2回上海Androidの会 勉強会用資料(※PDFファイル、1.9MB) トップページ
https://w.atwiki.jp/android/pages/13.html
Androidことはじめ Androidを始めるために、以下のセクションを読んでください。 SDKとプラグインのインストール SDKとEclipseプラグインをインストールする方法、またはAndroidアプリケーションを構築するための他のツールを使う方法。及び、サンプルアプリケーションを走らせるためのガイド。 もしもしAndroid! あなたの最初のAndroidアプリケーション。一般的なHello WorldをAndroidスタイルで記述します。 Androidアプリケーション解体新書 Androidアプリケーションの構造とアーキテクチャのガイド。このガイドは、あなたがAndroidアプリを作るための理解を手助けします。 Androidアプリケーション構築のチュートリアル このチュートリアルで、実際にAndroidアプリケーション作成を通じて学習していきます。メモの作成、編集、削除等、基本的な概念を実際的な例でカバーしたノートパッドの作成を行います。 開発ツール SDKに含まれるコマンドラインツールと使い方。 Androidアプリケーションのライフサイクル? 内部で動作しているアプリケーションとアクティビティに関するライフサイクルの詳細を解説します。 原文
https://w.atwiki.jp/android_development/pages/23.html
Top 開発環境構築 4. Android SDKのインストール 4. Android SDKのインストール 以下のサイトからAndroid SDKをダウンロードする。 http //developer.android.com/sdk/index.html サイトの赤枠内のリンクをクリックすることでZipファイルをダウンロードします。 任意のフォルダに配置 ダウンロードしたファイルを任意のフォルダに解凍、配置します。 例:「C \Android\android-sdk-windows」 環境変数の設定を行います。 「android-sdk-windows\tools」へパスを設定します。 例:「C \android\android-sdk-windows\tools」 参考:http //blog.cnu.jp/2009/11/06/windows-7-path/ ※既に他のパスが存在する場合は「;」で区切る。 ↓↓↓ 解凍したフォルダ内の「android-sdk-windows\SDK Setup.exe」を起動 ↓↓↓ エラーがでたら以下のチェックボックスにチェックを入れます。 一度closeボタンを押し、左の欄内にあるsettingsを選択します。 ↓↓↓ window下部にあるmisc内の「Force~」にチェックします。 ↓↓↓ SDKのインストール 左の欄内にあるInstalld Packegeを選択し、赤枠内のUpdate All...ボタンを押します。 ↓↓↓ インストールしたいSDKにチェックを入れ、赤枠内の「Install Selected」をクリックします。 ↓↓↓ インストールが終了したらclosedボタンをクリックし終了します。 以上でAndroid SKDのインストールは終了です。 3. 戻る ← 4. Android SDKのインストール → 次へ Top 開発環境構築 4. Android SDKのインストール 広告
https://w.atwiki.jp/hoshiba/pages/62.html
ウェブサイト新着情報 録音したTwitterスペースをiOS、Android、ウェブの全ユーザーが聴けるように - TechCrunch Japan 年末に売れてるSIMフリーAndroidスマホは? OPPO・Xiaomi・シャープ・サムスンが大接戦(BCN) - Yahoo!ニュース - Yahoo!ニュース Androidスマホの反応が遅くなる「8つの誤った使い方」とその対処法(ライフハッカー[日本版]) - Yahoo!ニュース - Yahoo!ニュース キャリアSNS「YOUTRUST」がAndroid版アプリをリリース、累計登録ユーザー数10万人突破も発表 - TechCrunch Japan iOS/Android版「聖剣伝説 Legend of Mana」が配信開始!PS4/Switch版コレクターズエディションの追加生産も決定|ゲーム情報サイト Gamer - Gamer マジ? AirTag悪用の高級車窃盗が報告される…(ギズモード・ジャパン) - Yahoo!ニュース - Yahoo!ニュース Androidの12月月例更新開始 「致命的」な6件を含む多数の脆弱性修正 - - ITmedia Mobile 新型コロナワクチン接種証明書アプリ、公開は12月20日 iPhoneとAndroid向け - ITmedia NEWS 『ポケモンユナイト』Nintendo Switch版とiOS/Android版の合計ダウンロード数が5000万回を突破。10月の2500万回突破からわずか2ヶ月で倍増(電ファミニコゲーマー) - Yahoo!ニュース - Yahoo!ニュース 「星間パイオニア」Android版の先行プレイがスタート。Twitterキャンペーンを実施中 - 4Gamer.net ドンキ、あえてチューナーレスの「Android TV搭載スマートテレビ」をうたう24型/42型 - 価格.com Xperia XZがAndroid初のトップ10入り 「にこスマ」の11月中古スマホランキング(ITmedia Mobile) - Yahoo!ニュース - Yahoo!ニュース Androidスマホのストレスを軽減する3つのステップ(ライフハッカー[日本版]) - Yahoo!ニュース - Yahoo!ニュース 『アンリアルライフ』iOS/Android版がリリースへ。記憶喪失の少女がサイコメトリー能力を駆使して冒険、お手頃価格で気軽に楽しめるように(電ファミニコゲーマー) - Yahoo!ニュース - Yahoo!ニュース Androidのスマホ性能チャート、Snapdragon 888 Plusが優位に - iPhone Mania 6年前にリリースされたFairphone 2にソフトウェアアプデ。Android 10対応に - GIZMODO JAPAN シャープからAndroidスマホ「AQUOS wish」、“シンプルでソーシャルグッド”な新機種 - ケータイ Watch Androidゲーム機の時代が来る? (1/4) - ASCII.jp フリーランス・副業向け マッチングサービス『Workship』、iOS/Androidアプリをリリース - PR TIMES AndroidスマホとiPadを上手に組み合わせて使う方法(ライフハッカー[日本版]) - Yahoo!ニュース - Yahoo!ニュース 今売れてるAndroidスマートフォンTOP10、シャープ製品が16週ぶりに首位 2021/12/4(BCN) - Yahoo!ニュース - Yahoo!ニュース XperiaがAndroidスマホ販売シェア1位に浮上――今さら感強い「Xperia View」に不安要素:石川温のスマホ業界新聞 - - ITmedia Android/Fire TV版「DiXiM Play」にキャスト機能追加(Impress Watch) - Yahoo!ニュース - Yahoo!ニュース 「Android 12L」と「iPad OS 15」がすごくてもタブレットが売れない理由 - TechTargetジャパン Amazonアプリストア、Android 12で動作しない不具合が1か月以上継続中 - Engadget日本版 グーグル、「Android Auto」をアップデート--ついにデジタルキーに対応 - CNET Japan 2021年12月第1週 AndroidにもRISC-Vの波が来るのか - Gihyo Jp バンキング型トロイの木馬が30万台以上のAndroidに感染か 国内金融機関も標的に - ITmedia Google、DevSummit 21で大画面Androidデバイスのサポートを発表 - InfoQ Japan Y!mobile、Amazonブラックフライデーで「Android One S5」「Libero S10」を1円に - - ITmedia 2022年のAndroidスマホはiPhone13シリーズに性能面で勝てるのか? - iPhone Mania 今売れてるAndroidスマートフォンTOP10、「Xperia 5 III」が2週連続TOP10入り 2021/11/27(BCN) - Yahoo!ニュース - Yahoo!ニュース AmazonブラックフライデーでiPhoneやAndroidスマホがセール対象に 1円端末も - - ITmedia 5G対応で3万円台のAndroidタブレット見参!ソフトバンクの「Lenovo TAB6」を使ってみた - PC Watch Androidのバージョン別シェア、いまだ3年以上前のものの合計が約50%を占める - iPhone Mania Xperiaが国内Androidシェア1位に躍進した理由 「ミッドレンジが好調」だけにあらず(1/2 ページ) - - ITmedia Mobile Twitterの投げ銭機能「Tips」、Androidアプリでも設定可能に - ITmedia NEWS 何が変わる?「Android 12」の最新機能とアップデートのタイミング| - @DIME 古いAndroidスマホがバージョンアップできない原因 – アップデート非対応機種か確認 (2021年11月19日) - エキサイトニュース Androidでアプリを毎回閉じないほうがいい - ギズモード・ジャパン Samsung、「Android 12」ベースのGalaxy新ランチャー「One UI 4」リリース - - ITmedia Mobile Pixel 6などのAndroidスマホが意図せず電話をかけてしまう問題が解消 - PC Watch 作って楽しむプログラミング Androidアプリ超入門 改訂新版 - nikkei BPnet Apple CEO「それならAndroidを買って」iPhoneでは絶対に認めないこと - AppBank.net OPPO初となるAndroidタブレットのスペックと価格がリーク - HelenTech 今売れてるAndroidスマートフォンTOP10、OPPOとソニーが首位争い 2021/11/13(BCN) - Yahoo!ニュース - Yahoo!ニュース Androidユーザー満足の最新スマートウォッチ「Fossil GEN 6」場面を問わず1日中装着【今日のライフハックツール】(ライフハッカー[日本版]) - Yahoo!ニュース - Yahoo!ニュース E-inkなのにAndroid搭載! 新感覚タブレット「BOOX - Nova Air」(BCN) - Yahoo!ニュース - Yahoo!ニュース 正当なアプリを装う新たなAndroidスパイウェア「PhoneSpy」が韓国で発見される - TechCrunch Japan 「Xiaomi Pad 5」はハイエンドAndroidタブレットの真打ちだ! (1/2) - ASCII.jp 「iPhone→Android」「Android→iPhone」の機種変更で予想外だったこと(マネーポストWEB) - Yahoo!ニュース - Yahoo!ニュース Googleのスマホ「Pixel 6」「Pixel 6 Pro」はどんなスマホ? 特徴をチェック!(Fav-Log by ITmedia) - Yahoo!ニュース - Yahoo!ニュース Android 12にアップデートすると使える新機能12選 - GIZMODO JAPAN この秋、発売されるAndroidスマホの本命は?(@DIME) - Yahoo!ニュース - Yahoo!ニュース 不要アプリを一気に消したい! ストレージの空きを増やしたい! そんなときに使えるAndroid標準機能 - ケータイ Watch Androidの11月月例更新開始 「致命的」な2件を含む多数の脆弱性修正 Pixelでは機能改善も - - ITmedia Mobile 2021年秋、バラエティが広がるハイエンドAndroid市場を俯瞰する - Impress Watch 折りたたみや大画面に最適化の「Android 12L」、来年公開へ - - ITmedia Mobile 楽天モバイル、Android 12提供予定のスマートフォンを案内 - ケータイ Watch Windows 11で「Androidアプリ」を実行可能に、プレビュー版をWindows Insider Programで提供開始 - ITmedia 今売れてるAndroidスマートフォンTOP10、Xperiaが1位・2位を独占 2021/10/23(BCN) - Yahoo!ニュース - Yahoo!ニュース AndroidにはないiOSの優れた機能8選(ライフハッカー[日本版]) - Yahoo!ニュース - Yahoo!ニュース Android 12リリース。使える機種が限られるけど...「Material You」が使えるようになるよ #Pixel6Launch(ギズモード・ジャパン) - Yahoo!ニュース - Yahoo!ニュース Androidスマホの「緊急通報・緊急情報」の登録方法は?万が一の確認方法など紹介 - TIME&SPACE ドコモが「Android 12」バージョンアップ対象モデルを公表 46機種で対応予定 - - ITmedia Android 12.1早くもリーク、折りたたみスマホ対応が進化しそう(ギズモード・ジャパン) - Yahoo!ニュース - Yahoo!ニュース Androidスマホの「アプリの権限」ってなに?許可してもOK?注意点など解説 - TIME&SPACE Androidにこの秋追加予定の13の新機能 TVリモコンや「Camera Switches」など - - ITmedia [ケータイ用語の基礎知識]第982回:YouTubeは見れるの? Androidアプリも使える? ファーウェイのスマホ・タブレットのHarmonyOSとは - ケータイ Watch 慣れると元に戻れなくなるかも、Androidアプリ「アルテ日本語入力キーボード」 - ケータイ Watch Android 11のアプリ権限リセット機能、過去OSでも利用可能に - Engadget 日本版 Androidスマホの速度が遅くなってきた時の対処法6つ - Lifehacker JAPAN Androidの位置情報を完全にオフにする方法 - Lifehacker JAPAN 2021年9月第3週 そろそろAndroid 12がリリースされるので復習:Android Weekly Topics - Gihyo Jp 【最新版】1万円台からのおすすめAndroidタブレット7選 - PC Watch 韓国、グーグルに約200億円の課徴金--「Android」の独占的地位を乱用 - CNET Japan Android 12 beta 5(ファイナル)公開 正式版は「数週間中」 - - ITmedia Androidの9月のセキュリティパッチ、脆弱性などを修正 - ケータイ Watch iPhoneもAndroidスマホも7年は使い続けられるように…ドイツ政府がEUに新法案を提唱 - GIZMODO JAPAN 「Windows 11」でのAndroidアプリ利用、10月5日には含まれず - ITmedia Androidで使いたい便利な時短機能10選 - Lifehacker JAPAN スマホ画面用「Android Auto」、Android 12で廃止へ - CNET Japan Androidを表情で操作するカメラスイッチ、Android 12ベータ4で利用可能に - Engadget日本版 家族のスマホさがしからクルマの遠隔ロックまで。Androidの「デバイスを探す」機能がめちゃ便利になりそう - GIZMODO JAPAN Androidの2021年8月のセキュリティパッチ情報が公開 - ケータイ Watch Google、Android 2.3.7以前の端末からのログインサポートを終了へ - Engadget日本版 Androidの「ジェスチャーナビゲーション」とは?操作が便利になるテクニックを紹介 - TIME&SPACE Google、Androidデバイス用機械学習プラットフォームを発表 - ケータイ Watch Windows 11で動くAndroidアプリ その背景にあるもの - ITmedia Android版「Googleアプリ」にアップデート 強制終了を繰り返す問題を修正 - - ITmedia 【復旧】Android版Googleアプリが「繰り返し停止」、多数デバイスに影響 - マイナビニュース 「Android 12」はどこが新しくなった? デザインやプライバシー機能に注目 - TechTargetジャパン 「Android 12」ベータに見る、スマホの進化の明日はどこだ!? - ケータイ Watch グーグル、Android 12でアプリによるトラッキングを拒否可能に - GIZMODO JAPAN 「SIMフリースマホ」予算2万円台のAndroidおすすめ5選【2021年5月版】 - - ITmedia 「Android 12」のリリース時期、新機能は?--これまでの情報まとめ - CNET Japan Androidアプリ障害の原因になった「WebView」ってなに? - ITmedia Androidの『おやすみモード』とは?通知の停止・アラーム自動セットなど機能満載 - TIME&SPACE Androidスマホのメリットとデメリット - Lifehacker JAPAN 「Android 12」のプレビュー版が初登場、新機能はまだないけど画面には細かい変化も - ケータイ Watch ブログ新着情報 #blogsearch2 technorati検索結果 #technorati
https://w.atwiki.jp/banrui/pages/24.html
開発環境設定 1.Android SDKをインストール 2.環境変数の設定 .bash_profileを書き換える export PATH=$PATH Developer/android-sdk-mac_x86/tools /Developer/android-sdk-mac_x86/platform-tools 3.Android SDKにADTプラグインをインストール Eclipse 「ヘルプ」→メニュー「新規ソフトウェアのインストール」→追加 名前:AndroidPlugin ロケーション:https//dl-ssl.google.com/android/eclipse/ チェックボックにチェック→完了→再起動 4.環境設定→「Android」を選択し、SDKロケーションにはAndroid SDK を配置した場所を指定し「OK」 5.platformsディレクトリは、空の状態なので設定 6.androidでターミナルでAndroid SDK and AVD Manage起動 7.Available packageを選択すると、右側にインストールできるパッケージが表示されるので全部選択→インストール 参考サイト MacでAndroid開発環境構築 Macに「eclipse」、「Android SDK」をインストールしてAndroid開発環境を整える。 プログラミング XML テキストサイズ android textSize パスワード android inputType="textPassword" ■LayoutInflater 参考 実装 TextViewに数値を渡す時は TextView.setText(String.valueOf(int)) を使う 日時の取得 java.util.CalendarクラスなどでOK 参考 Edittext カーソル位置を左上からにするのは、android gravity="top|left"を利用 参考 評価については、RatingBarを利用 サイズの変更と星の手動で動くようにする RatingBar参考 RatingBar生成 SQLite 標準操作マニュアル 参考 Android SQLiteデータベースを作成する(SQL文をリソースファイルに定義する) 参考ページ
https://w.atwiki.jp/droid/pages/55.html
AIDE - Android Java IDE(無料) http //androider.jp/a/e68d0273ccc06b30/
https://w.atwiki.jp/droid/pages/20.html
gooスマホ部に訊け!などでも、多くの質問と回答が公開されています。 バッテリー消費を抑えるにはxperiaのバッテリー消費を確実に抑えるには?(猫砂の惑星) 項目 コメント バッテリー消費を抑えるには xperiaのバッテリー消費を確実に抑えるには?(猫砂の惑星) http //nekozuna.blogspot.jp/2010/04/xperia.html 項目 コメント http //appllio.com/android-tool-explanation/SP%E3%83%A2%E3%83%BC%E3%83%89%E3%83%A1%E3%83%BC%E3%83%AB%E3%82%92%E8%BB%A2%E9%80%81%E3%83%90%E3%83%83%E3%82%AF%E3%82%A2%E3%83%83%E3%83%97%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95 -- メール移行 (2011-09-07 01 55 04) 名前 コメント
https://w.atwiki.jp/api_programming/pages/195.html
下位ページ インテントとインテントフィルタ サービス(Service) ストレージオプション フラグメント(Fragment) プロセスとスレッド(processes and threads) リストビュー(List View) レイアウト(Layout) 入力コントロール(Controls) 設定(Setting) 通知(Notification) Content スピナーコントロールの設定レイアウトの準備 選択肢の設定string.xmlでの設定 プログラム側から値を選択する アクティビティアプリの閉じられ方で、挙動が異なる アクションバーの代わりに、ツールバーを使うアクションバーを消す ツールバーをレイアウトに追加する Activity内で、アクションバーの代わりに使う記述をする スライドメニューを実装するドロワーレイアウトを作成する ドロワービューの中身を準備するListViewで作る 別のXMLファイルで作る ドロワーのオープン・クローズを実装する バックグラウンド処理(サービス) 閉じられても動作するサービスを動かすServiceクラスの作成 Activityから、作成したサービスを動かす 加速度センサの情報を受ける 回転角の情報を受け取る回転角の解釈 画面の回転を抑制するAndroidManifest.xmlで抑制する 動的に(プラグラム内で)で抑制する インテントにオブジェクトの情報を乗っけるparcelable をインプリメントしたクラスをつくるParcelable.Creater フィールドの実装 BundleやIntentに情報を乗せる Activity側で受ける 複数の情報をリストにして表示する バイブレーションを一定時間、作動させるパーミッションの追加 Vibratorオブジェクトを生成する vibrateを実行する 通知バーにバックグラウンド起動中の表示を出す 裏返したときの方向で、記録を分ける メニューのバーを設定するメニューリソースを準備するフォルダの作成 リソースファイルの作成 設定したメニューファイルを、Activityのメニューバーに評させる メニューの選択を受け取る処理を作る チェックボックスを動作させる 設定画面を設定する/設定情報をローカルストレージに残す 記録内容をGoogleスプレッドシートに記録する 記録内容をGoogleカレンダーに記録するブラウザでURLを開く ブラウザを開くURIとして、認証ページを指定する リダイレクトを受け取る 受け取ったリダイレクトをデータに紐解く codeを送って、tokenを受け取る tokenを保存する 終了時間と開始時間から、時間の計算をする リストビューで独自レイアウトを設定する USBデバッグ リリースビルド スピナーコントロールの設定 [部分編集] レイアウトの準備 Spinner android id="@+id/planets_spinner" android layout_width="fill_parent" android layout_height="wrap_content" / 選択肢の設定 string.xmlでの設定 まずは、string.xmlに文字配列を作る string-array name="planets_array" item Mercury /item item Venus /item item Earth /item /string-array この文字配列をアダプタにして、スピナーコントロールにアダプタをするリソースのアダプタ化には、ArrayApapter.createFromResource を使用できる。simple_spinner_item はデフォルト外観を設定している。通常はこれで良し。 setDropDownViewResource(int) は選択時に一覧を表示するのに使う。なくても一応ドロップダウンは出てくるが、ちょっとしょぼい? Spinner spinner = (Spinner) findViewById(R.id.spinner); ArrayAdapter CharSequence adapter = ArrayAdapter.createFromResource(this, R.array.planets_array, android.R.layout.simple_spinner_item); adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); spinner.setAdapter(adapter); createFromResource - ArrayAdapter | Android Developers setDropDownViewResource - ArrayAdapter | Android Developers プログラム側から値を選択する Spinner.setSelection で位置を指定する。その位置を取得するにはAdapterを使う。 使っているアダプタを取得するobjSpinner.getAdapter でアダプタを取得できる objAdapter.getPosition("...") でセレクタの位置を取得値が見つからなかったら -1 が返る objSpinner.setSelection に先程取得した位置を設定する ArrayAdapter spinnerAdapter = (ArrayAdapter) objSpinner.getAdapter(); int i = spinnerAdapter.getPosition("value"); objSpinner.setSelection(i); getAdapter - AbsSpinner | Android Developers getPosition - ArrayAdapter | Android Developers setSelection - AbsSpinner | Android Developers アクティビティ アプリの閉じられ方で、挙動が異なる onDestroyが呼ばれない限りは、Serviceを使わずとも、 ↓にある通り、ホームボタンとバックボタンでアプリケーションから離れた場合で挙動が違う。 https //kokufu.blogspot.jp/2011/03/activity.html 説明として、 ホームボタン:ホームアプリケーションが起動している バックボタン:Activityスタックからポップしている と書いてあったが、気持ち悪いのは、□ボタンを押すとあたかもまだ生きているかのように、アプリケーションリストに表示されるから。画面上に残っているが実際には onDestroy で消えている。 このあたりが、「アプリケーションをスワイプして消しても消さなくてもメモリにはそれほど影響しない」ということなんだろうか。 アクションバーの代わりに、ツールバーを使う [部分編集] 今後の拡張性から、アクションバーよりツールバーを使ったほうが良い、という記述をちょこちょこ見かけるが、Android Studioでプロジェクトを作ると、基本はアクションバーが設定されている。これをツールバーに置き換える。 アプリバーの追加 | Android Developers Toolbar | Android Developers AndroidのToolBar(新しいActionBar)メモ | Qiita アクションバーを消す res/values/styles.xmlで AppThemeのテーマを変更する style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar" ツールバーをレイアウトに追加する android.support.v7.widget.Toolbar android id="@+id/toolbar" android layout_width="match_parent" android layout_height="wrap_content" / レイアウトの@android */* ,?attr/* ,?* ,?android attr/* の違い | Qiita Activity内で、アクションバーの代わりに使う記述をする /* ToolBarの設定 */ Toolbar toolbar = (Toolbar)findViewById(R.id.toolbar); toolbar.setTitleTextColor(Color.WHITE); // 設定をしておく setSupportActionBar(toolbar); // アクションバーの代わり、という設定 これを書かないと、画面上では何も表示されない(空間だけはある) スライドメニューを実装する [部分編集] NavigationDrawer が正式名称? DrawerLayout | Android Developers ナビゲーションドロワーの作成 | Android Developers ドロワーレイアウトを作成する レイアウトxmlにて、DrawerLayout オブジェクトをレイアウトのルートビューとして指定する。 ルートの中にドロワービューとメインビューを設定する順序はメインビューを先にする高さはルートに合わせる(match_parent) 次にドロワーのビューを指定するlayout_gravityを指定する(layout_gravity:どっちにくっつけるか、どちら方向から出てくるか?)右から左に出す場合にはstart layout_heightは親ビューと同じ高さを指定する layout_widthはすべての情報が見える幅を指定する ドロワービューの中身を準備する ListViewで作る ListViewの中に android layout_gravity="..." を入れないと、スライドで入ってくる設定にならず、重ねて見えている状態になる android background="#111" 背景がないと、中途半端にすけた状態で表示される。 別のXMLファイルで作る NavigationViewで作った場合、ヘッダ部分とメニュー部分をそれぞれレイアウトとメニューで作成する app headerLayout="@layout/drawer_header" app menu="@menu/drawer" ドロワーのオープン・クローズを実装する DrawerLayout にリスナーをセットする。このリスナーは DrawerLayout.DrawerListener を実装して、使う。 Activity にアクションバーがセットされている場合は ActionBarDrawerToggle が DrawerLayout.DrawerListener を実装する。 DrawerLayout mDrawerLayout = ...; ActionBarDrawerToggle mDrawerToggle; mDrawerToggle = new ActionBarDrawerToggle(this, mDrawerLayout, R.string.drawer_open, R.string.drawer_close) { public void onDrawerClosed(View view) {...} public void onDrawerOpened(View drawerView) {...} }; // Set the drawer toggle as the DrawerListener mDrawerLayout.setDrawerListener(mDrawerToggle); 【Android】スライドして表示されるメニュー | Qiita Navigation Drawer の概要 | Android 開発入門 Navigation Drawer の基本的な実装方法 | Android 開発入門 バックグラウンド処理(サービス) サービス - Android Developers Androidアプリでのバックグラウンド処理と通知機能 | Android Studio 2で始めるアプリ開発入門 - CodeZine 流れ Serviceのサブクラスを作成する AndroidManifest.xmlにサービスを登録 サブクラスで、必要なクラスをオーバーライドする。次のあたり。onCreate() onStartCommand() onDestroy() アクティビティからサービスを起動する (きちっと止まるように設計しておく) 閉じられても動作するサービスを動かす バックグラウンドで動作させるためにはServiceを用いる。 Serviceクラスの作成 Activityのように、作成・開始などのイベントで動くが、おもに3つ。 onCreate onStartCommand onDestroy Service | Android Developers Activityから、作成したサービスを動かす startServiceで起動、stopService(stopSelf)で停止。忘れずにServiceを止めないと、いつまでも動き続ける。 startService、stopServiceなどには、インテントを準備して、サービスにそれをなげる形をとっている。 startService - Context | Android Developers stopService - Context | Android Developers stopSelf - Service | Android Developers 加速度センサの情報を受ける 回転角の情報を受け取る センサーは加速度まではそのまま読み取れるが、回転角は加速度情報、地磁気情報から計算する必要がある。まず getRotationMatrix で回転行列を求め、getOrientation で回転行列を回転角に変換する(計算する) getRotationMatric - SensorManager | Android Developers getOrientation - SensorManager | Android Developers 引数に取った2つの配列には、傾斜行列、回転行列(の情報)が計算されて入ってくる。情報が不要ならnullでよい。 回転角の解釈 正位置として Zは天を指す Yは磁北を指す Xは Y,Z の外積を指す 画面の回転を抑制する AndroidManifest.xmlで抑制する 回転させないActivityに android screenOrientation="portrait" を追加すると、縦向き固定になる activity | Android Developers 動的に(プラグラム内で)で抑制する Activity内で、setRequestedOrientation を呼び出す setRequestedOrientation - Activity | Android Developers screenOrientation - ActivityInfo | Android Developers インテントにオブジェクトの情報を乗っける bundleで多くの情報をわたすような方法として、putParcelableArrayList くらいしか見当たらないので、これを使う。そのためには、Parcelable をimplements したようなクラスを作る必要がある。 Bundle | Android Developers parcelable をインプリメントしたクラスをつくる Parcelable実装にはParcelable.Createorというstatic fieldが必要。そのフィールドの初期化にて、Parcelに保存したデータを復元するためのコンストラクタを呼ぶ。 Parcelable | Android Developers Parcelable.Creater フィールドの実装 Parcelable.Creater | Android Developers createFromParcel(Parcel source)Parcelable.writeToParcel() で書き出されたParcelデータをインスタンス化する → コンストラクタを作っておく newArray(int size)ParcelableクラスのArrayを作る BundleやIntentに情報を乗せる IntentならputParcelableArrayListExtra、BundleならputParcelableArrayList で情報を登録 putParcelableArrayListExtra - Intent | Android Developers getParcelableArrayList - Bundle | Android Developers Activity側で受ける IntentならgetParcelableで受けられる。受けたときにすでにParcelableをimplementしたオブジェクトで受けられる。 getParcelableArrayListExtra - Intent | Android Developers getParcelableArrayList - Bundle | Android Developers 複数の情報をリストにして表示する [https //www54.atwiki.jp/api_programming/pages/202.html] バイブレーションを一定時間、作動させる Vibratorインスタンスからvibrate()を実行する。バイブレーションの実施にはAndroidManifest.xmlにパーミッションの追加が必要。 パーミッションの追加 マニフェストにパーミッションを追加する - パーミッションの宣言 | Android Developers Vibratorオブジェクトを生成する getSystemServiceでVibratorオブジェクトを生成する Vibrator vibrator = (Vibrator) getSystemService(VIBRATOR_SERVICE); getSystemService - Context | Android Developers Vibrator | Android Developers vibrateを実行する 幾つかパターンはあるが、かんたんなところで、これ。 vibrator.vibrate(500); vibrate - Vibrator | Android Developers 通知バーにバックグラウンド起動中の表示を出す 裏返したときの方向で、記録を分ける メニューのバーを設定する メニューリソースを準備し、表示させる。そのうえで、メニューのタップ動作に対する反応を記述する メニュー | Android Developers メニューリソースを準備する フォルダの作成 デフォルトではメニュー用のフォルダが無い(かもしれない)ので、res/menuを追加し、ここに入れておく。 resフォルダ右クリック [New]>[Android resource directory]を選択 ダイアログで、「Resource type 」から「menu」を選択し、OK リソースファイルの作成 menuフォルダを右クリック [New]>[Menu resource file] ファイル名を入力し、OK ファイル内に menu item / item / /menu を記述(実際はidやタイトルを設定する必要あり) Menu Resource | Android Developers 設定したメニューファイルを、Activityのメニューバーに評させる onCreateOptionMenuをオーバーライドして、この中でリソースの指定などを行う。XMLのメニューを実際?のメニューオブジェクトに変換するのに、inflatorを使用できる。 @Override public boolean onCreateOptionsMenu(Menu menu) { MenuInflater inflater = getMenuInflater(); //(1) inflater.inflate(R.menu.menu_options_menu_list, menu); //(2) return super.onCreateOptionsMenu(menu); //(3) } onCreateOptionMenu - Activity | Android Developers メニューの選択を受け取る処理を作る オプションメニューを作っていれば、その受取はonOptionsItemSelectedをオーバーライドして処理できる。 @Override public boolean onOptionsItemSelected(MenuItem item) { return super.onOptionsItemSelected(item); } このとき、itemにクリックされた情報が入っているので、これを紐解いて、どのメニューがクリックされたか判断し、switchなどで処理する。 int itemId = item.getItemId(); Android 3.0(APIレベル11)以降では メニューリソースXMLのitemに、android onClick を記述しておくことで、動作を定義させることもできる。 チェックボックスを動作させる Android/入力コントロール(Controls) 設定画面を設定する/設定情報をローカルストレージに残す Android/設定 記録内容をGoogleスプレッドシートに記録する http //qiita.com/konnobu/items/8bec3d5a45235fc88a08 記録内容をGoogleカレンダーに記録する 多分、クライアント用のライブラリが作られていて、簡単に認証処理をしたり、データを取得したりできるようになっていると思われるが、別サイトでも転用が聞くように、地道な方法を取ってみる。というか、専用のライブラリの使い方をよくわかっていない。 流れは OAuth2.0で認証Google API にプロジェクトと登録(キーの発行) 認証コードを発行 受け取り コードを access token と交換 access token も使って、リクエスト送信 こまごまと引っかかった場所が多数。 AndroidManifest.xmlにパーミッションの設定が必要 ブラウザでURLを開く Android/インテントとインテントフィルタ ブラウザを開くURIとして、認証ページを指定する GoogleのOAuth2認証 OAuth2認証 | Android Developers Step 1 Send a request to Google's OAuth 2.0 server | Google Identify Platform リダイレクトを受け取る 大概の(google 以外でも)場合は、認証後に指定したリダイレクト先に飛ばしてくれる。そのスキーム名に応じて、Android側でどのアプリで開くのかを考えてくれる。Android に「このスキームがきたら、俺のアプリで開いて」と指示するためには、AndroidManifest.xml に記述する必要がある。 scheme // host port / path intent-filter内で、action, category, data を指定する。上記のリダイレクト先に対応する内容を書くのは data で、scheme は data android scheme="com.example.testproject" / のようになる。 Intent の 定数として ACTION_VIEW などが定義されているが、実体は文字列で、それが android.intent.action.VIEW などになる(ので、どれを設定するかはIntent を参照)。ブラウザでどんなスキームがきたらヨソになげるのか、どんな action として投げるのか、説明されている場所がわからないが、ひとまず action ACTION_VIEW category CATEGORY_BROWSABLR scheme ここは各自で で開けた。redirect_uri で scheme //~ が指定できない( /だけ)なので、hostは存在せず、pathだけ。 インテント解決 - インテントとインテント フィルタ | Android Developers Intent - Android Developers 受け取ったリダイレクトをデータに紐解く 一旦受け取れれば、中身は getIntent() を経由して、中身を見られる(Intent.getAction(), Intent.getCategories() など)。OAuth では、path のなかに code を入れて返してくるので、Dataのなかを探せばある Intent intent = getIntent(); String data = intent.getDataString(); とすると、googleの認証で指定した redirect_uri のあとに code がくっついて返ってきている。以下、サンプル com.example.####.#### /oauth2callback?code=4/8abcdefg# 上記の場合、oauth2callback を uri.getPath() で、4/8abcdefg# を getQueryParameter("code") で受け取れる。 getIntent - Activity | Android Developers getData - Intent | Android Developers getQueryParameter - Uri | Android Developers codeを送って、tokenを受け取る コードと必要情報を POST することで、access token との交換をする。この処理は、UIスレッドだとエラーになるので、AsyncTaskで実行する必要がある。 また、交換がうまく行かなかったときは、HttpURLConnection の getInputStream ではなく、 getErrorStream に情報が流れるため、プログラムの確認作業では注意。(この辺をよくわかっていなくて、エラー原因を探すのに苦労した。) redirect_uri はスキームもパスもコード発行依頼時と同じものを使う。 Android/プロセスとスレッド(processes and threads) Async Task | Android Developers tokenを保存する プレファレンスへの保存 終了時間と開始時間から、時間の計算をする リストビューで独自レイアウトを設定する https //www54.atwiki.jp/api_programming/editx/202.html USBデバッグ http //www.aiseesoft.jp/tutorials/android-debug-mode.html リリースビルド http //androidstudio.hatenablog.com/entry/2014/07/26/154043
https://w.atwiki.jp/redcloud/pages/13.html
目次 目次 SDK 1.6 SDK導入 Eclipse ADT導入 Eclipse 3.4の場合 Eclipse 3.5の場合 仮想マシンAVD作成 SDK 2.0 SDK導入 Eclipse ADT導入 Eclipse 3.5の場合 add-ons ファイルの取得 仮想マシンAVD作成 ツール adb adb devices 接続デバイス確認 adb shell コンソール接続 adb install アプリインストール adb push ファイル転送 開発 Eclipse ADTでHello World SDK1.5ベース SDK1.6ベース SDK2.0ベース Map使用アプリ ステータスバー使用アプリ いじる HT-03A 道化 カスタムROM導入 読書メモ お勉強 リンク SDK 1.6 SDK導入 ダウンロードここから android-sdk-windows-1.6_r1.zip をダウンロード C \local\android-sdk-windows-1.6_r1 に解凍 PATH環境変数に、 上記解凍先フォルダ \tools を追加 Eclipse ADT導入 Eclipse 3.4の場合 eclipseを起動して、[ヘルプ]- [ソフトウェアの更新]で[使用可能なソフトウェア]タブを選択し、[サイトの追加]を押下 https //dl-ssl.google.com/android/eclipse/ を追加して、正常に追加できていることを確認 ※2009/11/3時点でバージョンは0.9.4 追加したサイトにチェックを入れ[インストール]押下 ※上記方法でうまくいかなければ。。。↓ ※実際に "No repository found containing org.apache.oro/osgi.bundle/2.0.8.v200903061218" というエラーが発生した! ダウンロードここから ADT-0.9.3.zip をダウンロード eclipseを起動して、[ヘルプ]- [ソフトウェアの更新]で[使用可能なソフトウェア]タブを選択し、[サイトの追加]を押下 [アーカイブ]を押下し、ダウンロードしてきたzipを指定、正常に追加される事を確認 追加したサイトにチェックを入れ[インストール]押下 ※アップデートの場合は下記のようなダイアログが出る ※これでもうまくいかず。。。Eclipseを3.5にするしかなさそう Eclipse 3.5の場合 eclipseを起動して、[ヘルプ]- [新規ソフトウェアのインストール]- [追加]で、https //dl-ssl.google.com/android/eclipse/ を追加 使用可能なソフトウェアの画面に戻って、[作業対象]プルダウンで追加したandroidのURLを選択。ソフトウェア表示欄にDeveloper Toolsが表示される事を確認 全てにチェックを入れて[次へ]。後はインストールをひたすら進める。(警告が出てもOKする) [ウインドウ]- [設定]- [Android]で、[SDKロケーション]にインストールしたAndroidSDKのフォルダを指定 仮想マシンAVD作成 コマンドプロンプトを開いて下記を実行 android create avd -n SDK16 -t 4 -c 128M エミュレータ起動確認 emulator @SDK16 SDK 2.0 ※SDK1.6からのアップデートを前提とした手順を記述する SDK導入 ダウンロードここから C \local\android-sdk-windows に解凍 PATH環境変数に、 上記解凍先フォルダ \tools を追加 Eclipse ADT導入 Eclipse 3.5の場合 eclipseを起動して、[ヘルプ]- [新規ソフトウェアのインストール]- [追加]で、https //dl-ssl.google.com/android/eclipse/ を追加 使用可能なソフトウェアの画面に戻って、[作業対象]プルダウンで追加したandroidのURLを選択。ソフトウェア表示欄にDeveloper Toolsが表示される事を確認 全てにチェックを入れて[次へ]。後はインストールをひたすら進める。(警告が出てもOKする) [ウインドウ]- [設定]- [Android]で、[SDKロケーション]にインストールしたAndroidSDKのフォルダを指定 add-ons ファイルの取得 eclipseを起動して、[ウインドウ]- [Android SDK and AVD Manager] [Available Packages]のリポジトリを展開し、必要な物にチェックを入れ[Install Selected]- [Accept All]にチェックを入れ[Install Accepted] 仮想マシンAVD作成 eclipseを起動して、[ウインドウ]- [Android SDK and AVD Manager] [Virtual Devices]を選択して[新規]を押下して Create new AVD画面を開く Maps APIをSDK1.5ベースで使用できる「Google APIs API Level 3」を使用する前提で。。。 名前…任意の名前を入力 ターゲット…"Google APIs(Google Inc) - API Level 3" SD Card…サイズ=任意(とりあえず128 MiB) Skin…Built-In=任意(とりあえずDefault) SDK1.6ベースの「API Level 4」を使用する前提で。。。 ターゲット…"Android 1.6 - API Level 4" SDK2.0ベースの「API Level 5」を使用する前提で。。。 ターゲット…"Android 2.0 - API Level 5" 以上を入力して[Create AVD] ツール adb adb devices 接続デバイス確認 PCに接続中のデバイス(エミュレータも含む)を表示する adb devices List of devices attached HT********** device ←実機 emulator-**** device ←エミュレータ adb shell コンソール接続 adb (-s serial number ) shell adb install アプリインストール apkファイル形式のアプリを接続中のデバイスにインストールする adb (-s serial number ) install c \hoge.apk adb push ファイル転送 SDカードにPC上のファイルを転送する adb (-s serial number ) push "c \hoge.txt" /sdcard/hoge.txt 開発 Eclipse ADTでHello World SDK1.5ベース SDK1.6ベース SDK2.0ベース Map使用アプリ TODO ステータスバー使用アプリ TODO いじる HT-03A 道化 このリンクを、Gmailからorブラウザから起動 ファイルマネージャ(AndExplorerなど)で /sdcard/download を開き(※DolphinブラウザでDLした場合はここだった)、ダウンロードしたapkファイルを選択 TODO カスタムROM導入 TODO 読書メモ Android/読書メモ お勉強 Android/お勉強 リンク TODO